package geste.bean;

import geste.service.TipoUsuarioService;
import geste.service.UsuarioService;
import geste.vo.Tipo;
import geste.vo.Usuario;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

import javax.faces.model.SelectItem;

import org.hibernate.HibernateException;

public class ManterUsuarioBean extends GestBean{
	
	private Usuario usuario;
	private UsuarioService usuarioService;
	private TipoUsuarioService tipoUsuarioService;
	private List<SelectItem> listaTipoUsuario;
	
	public List<SelectItem> getListaTipoUsuario() {
		Tipo tipo = new Tipo();
		listaTipoUsuario = new ArrayList<SelectItem>();
		List<Tipo> tipoUsuarios = (List) tipoUsuarioService.listar(tipo);
		for (Tipo t : tipoUsuarios) {
			listaTipoUsuario.add(new SelectItem(new Integer(t.getId()), t.getPerfil()));
		}
		return listaTipoUsuario;
	}

	public TipoUsuarioService getTipoUsuarioService() {
		return tipoUsuarioService;
	}

	public void setTipoUsuarioService(TipoUsuarioService tipoUsuarioService) {
		this.tipoUsuarioService = tipoUsuarioService;
	}


	public Usuario getUsuario() {
		return usuario;
	}

	public void setUsuario(Usuario usuario) {
		this.usuario = usuario;
	}
	
	public UsuarioService getUsuarioService() {
		return usuarioService;
	}

	public void setUsuarioService(UsuarioService usuarioService) {
		this.usuarioService = usuarioService;
	}

	public String carregar(){
		resetar();
		return "incluirUsuario";
	}
	
	public void resetar(){
		usuario = new Usuario();
	}
	
	public void incluir(){
		try {
			usuarioService.incluir(usuario);
		} catch (HibernateException e) {
			e.printStackTrace();
		}
	}
}
